package com.alpha.runes.util;

import android.annotation.SuppressLint;
import android.graphics.Rect;

import org.jetbrains.annotations.NotNull;

public class ViewUtil {

    /**
     * 获取两个矩形的交叉部分占r1的比例
     *
     * @param r1
     * @param r2
     * @return
     */
    public static float getRatio(@NotNull Rect r1, @NotNull Rect r2) {
        if (r1.isEmpty()) return 0;
        Rect temp = new Rect(r1.left, r1.top, r1.right, r1.bottom);
        int sourceSize = temp.width() * temp.height();
        // 如果由left，top，right，bottom指定的矩形与此矩形相交，
        // 则返回true并将此矩形设置为该交点，
        // 否则返回false并且不更改此矩形。
        boolean intersect = temp.intersect(r2);
        int intersectSize = temp.width() * temp.height();
        float scale = intersectSize * 1.0f / sourceSize;
        return intersect ? scale : 0f;
    }
}
